package com.itheima.task.config;

import com.itheima.common.constants.KafkaConstants;
import com.itheima.common.constants.RedisConstants;
import org.springframework.context.annotation.Configuration;
import org.springframework.kafka.annotation.EnableKafka;

/**
 * Kafka 配置
 * 
 * @deprecated 常量已迁移到 common 模块，请使用：
 * - {@link KafkaConstants.AuditTopics} Kafka Topic 常量
 * - {@link RedisConstants.AuditQueue} Redis Key 常量
 * - {@link RedisConstants.AuditLock} Redis 锁常量
 */
@Configuration
@EnableKafka
public class KafkaConfig {

    /**
     * Kafka Topics 定义
     * @deprecated 请使用 {@link KafkaConstants.AuditTopics}
     */
    @Deprecated
    public static class Topics {
        /** @deprecated 请使用 {@link KafkaConstants.AuditTopics#NOTE_AUDIT_REQUEST} */
        public static final String NOTE_AUDIT_REQUEST = KafkaConstants.AuditTopics.NOTE_AUDIT_REQUEST;
        
        /** @deprecated 请使用 {@link KafkaConstants.AuditTopics#REVIEW_AUDIT_REQUEST} */
        public static final String REVIEW_AUDIT_REQUEST = KafkaConstants.AuditTopics.REVIEW_AUDIT_REQUEST;
        
        /** @deprecated 请使用 {@link KafkaConstants.AuditTopics#COMMENT_AUDIT_REQUEST} */
        public static final String COMMENT_AUDIT_REQUEST = KafkaConstants.AuditTopics.COMMENT_AUDIT_REQUEST;
        
        /** @deprecated 请使用 {@link KafkaConstants.AuditTopics#AUDIT_RESULT} */
        public static final String AUDIT_RESULT = KafkaConstants.AuditTopics.AUDIT_RESULT;
    }

    /**
     * Redis Keys 定义
     * @deprecated 请使用 {@link RedisConstants.AuditQueue} 和 {@link RedisConstants.AuditLock}
     */
    @Deprecated
    public static class Keys {
        /** @deprecated 请使用 {@link RedisConstants.AuditQueue#DELAY_QUEUE_AUDIT_TASKS} */
        public static final String DELAY_QUEUE_AUDIT_TASKS = RedisConstants.AuditQueue.DELAY_QUEUE_AUDIT_TASKS;
        
        /** @deprecated 请使用 {@link RedisConstants.AuditQueue#READY_QUEUE_AUDIT_TASKS} */
        public static final String READY_QUEUE_AUDIT_TASKS = RedisConstants.AuditQueue.READY_QUEUE_AUDIT_TASKS;
        
        /** @deprecated 请使用 {@link RedisConstants.AuditQueue#PROCESSING_AUDIT_TASKS} */
        public static final String PROCESSING_AUDIT_TASKS = RedisConstants.AuditQueue.PROCESSING_AUDIT_TASKS;
        
        /** @deprecated 请使用 {@link RedisConstants.AuditLock#LOCK_SCAN_DELAY_QUEUE} */
        public static final String LOCK_SCAN_DELAY_QUEUE = RedisConstants.AuditLock.LOCK_SCAN_DELAY_QUEUE;
        
        /** @deprecated 请使用 {@link RedisConstants.AuditLock#LOCK_CONSUME_READY_QUEUE} */
        public static final String LOCK_CONSUME_READY_QUEUE = RedisConstants.AuditLock.LOCK_CONSUME_READY_QUEUE;
        
        /** @deprecated 请使用 {@link RedisConstants.AuditQueue#TASK_STATUS_CACHE} */
        public static final String TASK_STATUS_CACHE = RedisConstants.AuditQueue.TASK_STATUS_CACHE;
    }
}

